The present invention relates generally to systems and methods that use computer keyboards for inputting information and, particularly, to systems and methods for mapping multiple identical consecutive keystrokes of one character into a replacement character not otherwise represented on the keyboard.
With the information age rapidly shrinking the world""s boundaries, and most forms of electronic voice and data communications becoming more prevalent, multi-lingual electronic voice and data communications are also becoming increasingly common. These multi-lingual communications are often computer generated written communications. Today, the basic scheme for accommodating electronic multi-lingual communication needs is by employing language translation software or language-specific software packages in combination with language specific keyboards.
While language translation software may do an adequate job for simple communications, this type of software generally has built-in limitations that can result in a message being translated in a way that does not quite convey the meaning, tone, or message intended by the author. As a result, multi-lingual users may prefer to personally compose a communication""s text without relying on a piece of software to select words for them. In such a case, at present, the primary alternative is to employ language-specific software in combination with language-specific keyboards.
Language-specific software packages in combination with language-specific keyboards also have certain limitations and disadvantages. The basic layout of today""s keyboards are inherited from the mechanical typewriter, and are available in several xe2x80x9cnationalxe2x80x9d layouts with different placement of alphabet characters and diacritical marks on the keyboard. And, most major software application programs are available in a multitude of languages. Thus, a user can purchase a different keyboard and accompanying software for each desired language. While the combination of language-specific software and keyboards may meet the user""s needs in composing multi-lingual computer generated correspondence, it is both expensive and cumbersome. This scheme requires users to obtain and store both a software package and a physical keyboard specific to each language in which they would like to converse. Additionally, it can be challenging for multilingual users to remain proficient in entering text in different languages when having to use keyboards with different key layouts. A further complication arises when using portable equipment, in that it may be inconvenient or impossible to change the physical keyboard in portable equipment. Under such conditions, the user may have to resort to using only a mental image of a language specific keyboard layout.
It is an object of the present invention to provide a multi-language keyboard, allowing text entry in numerous languages using only one physical keyboard, with that one physical keyboard being any keyboard of the user""s choosing.
In summary, the present invention is a computer implemented method for allowing the entry of text in any number of languages using any keyboard of the user""s choosing. The computer implemented method monitors a user""s keystrokes detecting multiple consecutive keystrokes of diacritical characters in a predefined set of characters, then maps the keystrokes to replacement characters.
A diacritical character is a character with diacritical variations that change the sound or accent of that character. For example, xe2x80x9cexe2x80x9d, xe2x80x9cxc3xa9xe2x80x9d and xe2x80x9cxc3xa8xe2x80x9d could be the diacritical variations on the diacritical character xe2x80x9cexe2x80x9d in a particular language. A predefined set of characters is that set of characters defined as the characters in a selected language that have diacritical variations. Thus, once multiple identical consecutive keystrokes of any key are detected, the method determines whether the multiple keystrokes are of a diacritical character or whether they are of some other character. If they are of some other character, then normal keystroke processing continues. If the multiple keystrokes are of a diacritical character, then the method maps the multiple identical consecutive keystrokes to a replacement character that is distinct from the diacritical character.
In one embodiment of the invention, there exists a plurality of predefined language modules, with each language module defining a distinct set of mappings. Each distinct set of mappings includes a mapping for each diacritical variation of each diacritical character to a replacement character. The replacement character is entered into a text document or application program when the user enters multiple identical consecutive keystrokes of a diacritical character.